package com.achievement.domain.vo;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.common.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * BookVO
 */

@Data
public class BookVO {

    /**
     * ID
     */
    private String id;

    /**
     * 著作名称
     */
    @Excel(name = "著作名称")
    private String name;

    /**
     *
     */
    private String code;

    /**
     * 所属单位
     */
    @Excel(name = "所属单位")
    private String unitId;

    /**
     *
     */
    private String divisionId;

    /**
     * 教育部统计归属
     */
    @Excel(name = "教育部统计归属")
    private String subjectClassId;

    /**
     * 著作类别id
     */
    @Excel(name = "著作类别")
    private String typeId;

    /**
     * 论文类型
     */
    private String modeId;

    /**
     * 出版单位
     */
    @Excel(name = "出版单位")
    private String publishUnit;

    /**
     * ISBN号
     */
    @Excel(name = "ISBN号")
    private String isbn;

    /**
     * 出版时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出版时间",dateFormat = "yyyy-MM-dd")
    private Date publishDate;

    /**
     * 出版地
     */
    private String publishAddressId;

    /**
     * 项目来源
     */
    @Excel(name = "项目来源")
    private String projectSourceId;

    /**
     * 一级学科
     */
    @Excel(name = "一级学科")
    private String subjectId;

    /**
     * 是否翻译为外文
     */
    @Excel(name = "是否翻译为外文",readConverterExp ="0=否,1=是")
    private String isTranslated;

    /**
     * 语种
     */
    @Excel(name = "语种")
    private String languageId;

    /**
     * 总字数
     */
    @Excel(name = "总字数(万字)",scale = 2)
    private BigDecimal wordNumber;

    /**
     *
     */
    private Integer authorNumber;

    /**
     * 备注
     */
    private String note;

    /**
     *
     */
    private BigDecimal assessValue;

    /**
     * 第一作者
     */
    private String firstAuthorName;

    /**
     * 第一作者职工号
     */
    private String firstAuthorAccount;

    /**
     * 职称
     */
    private String firstAuthorTitleId;

    /**
     * 学历
     */
    private String firstAuthorEduLevelId;

    /**
     * 学位
     */
    private String firstAuthorEduDegreeId;

    /**
     * 出版社级别
     */
    @Excel(name = "出版社级别")
    private String publishLevel;

    /**
     * CIP号
     */
    @Excel(name = "CIP号")
    private String cip;

    /**
     *
     */
    private String isRecension;

    /**
     * 学校署名
     */
    @Excel(name = "学校署名",readConverterExp ="0=第一单位,1=非第一单位")
    private String schoolSign;

    /**
     * 电子版附件
     */
    private String fileIds;

    /**
     * 审核状态
     */
    @Excel(name = "审核状态",readConverterExp ="-2=待完善,-1=暂存,1=审批中,2=审批通过,3=审批不通过")
    private String checkstatus;

    /**
     *
     */
    private String checkdate;

    /**
     *
     */
    private String checker;

    /**
     *
     */
    private String firstAuthorSexid;

    /**
     *
     */
    private String firstAuthorId;

    /**
     *
     */
    private String authorpids;

    /**
     *
     */
    private String authorunitids;

    /**
     *
     */
    private String completedatastatus;

    /**
     * 所有作者
     */
    @Excel(name = "所有作者")
    private String authornames;

    /**
     * 论文作者信息列表
     */
    private List<BookAuthorVO> authorList;

    private List<Map<String,String>> fileList;

    private String processInstanceId;

    private Boolean isAuditor;

    private String taskId;
}
